<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <script>
    // ========================== 思考题: 如何准确判断一个数据是数组类型 ==========================

    // ========================== typeof 判断数据类型 ==========================
    console.log(typeof 1) //number
    console.log(typeof '1') // string 
    console.log(typeof true) // boolean
    console.log(typeof undefined) // undefined
    console.log(typeof {}) // object
    console.log(typeof []) // object
    console.log(typeof new Date()) // object
   
    // 函数
    function fn() { }  
    console.log(typeof fn) // function
  
    // null
    console.log(typeof null) // object  
  
  
    // ==================================== 补充 typeof ====================================
    // typeof 检测简单数据的时候，结果都是对应的结果
    //  例外 null的结果是object

    //  typeof 碰到复杂数据类型 结果是 object
    //  例外：函数的检测结果是 function (js中函数是一等公民)

    // 如何准确的检测数组是否为数组
    // 静态方法
    console.log(Array.isArray([]))   //true
    console.log(Array.isArray({}))   //false
    
  </script>
</body>

</html>